Imports System.Xml.Serialization
Imports EdmxEditor.CodeGeneration

Namespace CSDL
    Public Class ComplexTypePropertyCollection
        Inherits Collections.XElementCollection(Of ComplexTypeProperty)

        ''' <summary>Initializes an instance of the <see cref="ComplexTypePropertyCollection" /> class.</summary>
        ''' <param name="parent">The <see cref="XElement"/> that is the owner of this instance.</param>
        ''' <param name="elementName">The name of the item element.</param>
        Public Sub New(ByVal parent As XElement, ByVal elementName As String)
            MyBase.New(parent, parent.Name.Namespace, elementName)
        End Sub

        ''' <summary>Initializes an instance of the <see cref="ComplexTypePropertyCollection" /> class.</summary>
        ''' <param name="parent">The <see cref="XElement"/> that is the owner of this instance.</param>
        ''' <param name="elementName">The name of the item element.</param>
        Public Sub New(ByVal parent As XElement, ByVal elementName As XName)
            MyBase.New(parent, elementName)
        End Sub

        ''' <summary>Initializes an instance of the <see cref="ComplexTypePropertyCollection" /> class.</summary>
        ''' <param name="parent">The <see cref="XElement"/> that is the owner of this instance.</param>
        ''' <param name="namespace">The <see cref="XNamespace"/> of the item element.</param>
        ''' <param name="elementName">The name of the item element.</param>
        Public Sub New(ByVal parent As XElement, ByVal [namespace] As XNamespace, ByVal elementName As String)
            MyBase.New(parent, [namespace], elementName)
        End Sub

    End Class

End Namespace
